package com.lcu.bos.dao.impl;

import com.lcu.bos.dao.IUserDao;
import com.lcu.bos.dao.base.BaseDaoImpl;
import com.lcu.bos.modle.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.orm.hibernate3.HibernateTemplate;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * 通过继承父类，是实现公共的方法
 * 通过实现接口，是实现自己的方法
 */
@Repository
public class UserDaoImpl extends BaseDaoImpl<User> implements IUserDao {

    public User findByEmail(String email) {
        return null;
    }

    public User find(String username,String password) {
        String hql="from User where username =? and password=?";
        //hibernateTemplate 调用的是父类中的  hql语句里没有select
        List<User> users = (List<User>) hibernateTemplate.find(hql, username, password);
        if(users.size()==1){
            return users.get(0);//如果仅有一条，则返回第一个用户
        }
        return null;
    }

    @Override
    public User findByUsername(String username) {
        String hql="from User where username =?";
        //hibernateTemplate 调用的是父类中的  hql语句里没有select
        List<User> users = (List<User>) hibernateTemplate.find(hql, username);
        if(users.size()==1){
            return users.get(0);//如果仅有一条，则返回第一个用户
        }
        return null;
    }
}
